package com.itheima.reggie.service;

import com.itheima.reggie.common.PageBean;
import com.itheima.reggie.common.R;
import com.itheima.reggie.dto.DishDto;
import com.itheima.reggie.entity.Dish;
import org.apache.poi.ss.usermodel.Workbook;

import java.util.List;

/**
 * 菜品管理业务层
 */
public interface DishService {

    /**
     * 分页条件查询
     * @param page
     * @param pageSize
     * @param name
     * @return
     */
    R<PageBean> findPage(int page, int pageSize, String name);

    /**
     * 新增菜品
     * @param dishDto
     * @return
     */
    R<String> addDish(DishDto dishDto);

    /**
     * 根据id查询菜品和口味信息
     * @param id
     * @return
     */
    R<DishDto> findDishDtoById(long id);

    /**
     * 更新菜品和口味数据
     * @param dishDto
     * @return
     */
    R<String> update(DishDto dishDto);

    /**
     * 批量禁用菜品
     * @param ids
     * @return
     */
    R<String> disableDish(int status,Long[] ids);

    /**
     * 批量删除菜品
     * @param ids
     * @return
     */
    R<String> deleteDish(Long[] ids);

    /**
     * 根据id查询菜品列表
     * @param categoryId
     * @return
     */
    R<List<DishDto>> findDishListById(Long categoryId,Integer status);

    /**
     * 导出菜品数据到Excel
     * @return
     */
    Workbook exportExcel(long[] ids);
}
